package com.ztesoft.report.entity;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.ztesoft.report.base.entity.BaseEntity;
import com.ztesoft.report.utils.DateJsonSerializer;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 服务接口表
 * </p>
 *
 * @author y3tu
 * @since 2018-06-21
 */
@TableName("service_interface")
@Data
public class ServiceInterface extends BaseEntity<Long> {

    private static final long serialVersionUID = 1L;

    /**
     * 报表ID
     */
	@TableId(value="id", type= IdType.INPUT)
	private Integer id;
    /**
     * 配置名称
     */
	private String name;
    /**
     * 关联report表id
     */
	@TableField("report_id")
	private String reportId;
    /**
     * 状态 00W等待生成 00D:处理中(报表数据生成服务) 00E:报表数据已生成，等待上传 00F:处理中(报表生成excel上传服务) 00A:处理成功(报表生成excel上传服务) 00X:处理失败
     */
	private String status;
    /**
     * 失败原因
     */
	@TableField("error_msg")
	private String errorMsg;
    /**
     * 创建时间
     */
	@TableField("create_time")
	private Date createTime;
    /**
     * 修改时间
     */
	@TableField("update_time")
	private Date updateTime;
	//方便返回前台打包使用
	@TableField(exist = false)
	private String categoryName;

	@Override
	protected Serializable pkVal() {
		return this.id;
	}

	@Override
	public String toString() {
		return "ServiceInterface{" +
			", id=" + id +
			", name=" + name +
			", reportId=" + reportId +
			", status=" + status +
			", errorMsg=" + errorMsg +
			", createTime=" + createTime +
			", updateTime=" + updateTime +
			"}";
	}
}
